import { NextRequest, NextResponse } from "next/server"; import { z } from "zod"; import { assertSameOrigin, requireUser } from "@/lib/auth/session"; import { updateViewing } from "@/lib/inquiries/service"; import { handle, parseBody } from "@/lib/api"; export const dynamic = "force-dynamic"; const Body = z.object({ action: z.enum(["confirm", "cancel", "done"]), slot: z.string().datetime({ offset: true }).optional() }); export async function PATCH(req: NextRequest, { params }: { params: Promise<{ id: string }> }) { try { await assertSameOrigin(); const u = await requireUser(); const { id } = await params; const b = await parseBody(req, Body); await updateViewing(id, u.id, b.action, b.slot); return NextResponse.json({ ok: true }); } catch (e) { return handle(e); } }